自鯖建立 1:ひとまずのセットアップまで - Misskey
前提:Misskey自鯖建立(XServerVPS)メモ【自由研究】
✅全体的に手順参考:Xserver VPSでMisskeyの自サバをたてる #misskey - Qiita
-----------------------------------------
✅この項目からの参考:Misskeyアプリイメージを利用する | XServer VPS(マニュアル)
XServer VPSを申し込む
申込時にMisskeyを選択
マニュアルよく見て、しっかり選択しておきます。
💡間違えたら申込後からでもインストールできます。
💡個人鯖なら一番安い2GBのプランで足りるらしい。
SSH Keyについて
無しで進めた
公開鍵認証に使うやつ、後からでも作れる。Xserverのこの機能以外でも作ることができる。私は後の手順で結局これを使った
rootパスワードについて
記号「”」「’」「;」は問題になる可能性が高いのでrootパスワードの入力を避けてください。https://agepote.jp/mcserver/xserver-vps-vanilla#index_id3
らしい。
VPSを操作する
VPSパネルからサーバーのIPアドレス確認、控える。
https://gyazo.com/1f795fcc4794308f392bedd3f8412a76
💡アプリケーション: MisskeyとなっていればOK
アカウントの二段階認証設定しておいてみる。
コンソールボタンからサーバーにログインする。
アプリイメージでインストールされてるOSがUbuntu。UbuntuはLinuxの仲間。ここから黒い画面でコマンドをポチポチすることがあるけど一旦の設定済ませるまでは簡単な操作しかしないので初めてでも大丈夫のはず
ログインの仕方
root入力後enter、その後VPS申込時決めたパスワードを入力してenter。
パスワードは入力中も画面に表示されないので気を付けて入力する。
ログイン後、MisskeyのURLが表示されている。
なんかいろいろ他に表示されてるが一旦無視していいです。
さっきと同じIPアドレスがあることを確認。
❗️Misskeyっぽい単語が一つもない場合、アプリイメージの選択ミスってるかもしれないため、VPS情報の画面から選択したアプリイメージの確認。OS再インストールからMisskeyアプリイメージでインストールし直せる。
コンソールを一旦閉じる
exitでログアウト→バツでウィンドウ閉じる。
パケットフィルター設定
ファイアウォールの一種。ここでは、とりあえず自分が作業できるために設定を変える。セキュリティのための設定はあとでまたやる。
マニュアルの通りにオフにした。がこの後Misskeyにアクセスできなかった。
ので、フィルタールールでSSHとWebを許可。したがアクセスできなかった。
ので追加で、手動でTCP 3000を許可。したらできた。
URLの末尾についてる数字
次の項目はXServerのマニュアルにはないけどやっとく。
Misskeyを開く
アプリイメージのおかげで申込だけで苦労せずインストール済んだので、もうMisskeyが触れるようになってる。
http://(IPアドレス):3000にアクセス。
コンソールに表示されていたURLのこと。
ブラウザが勝手にhttpsにしているかもしれないのでhttpなのを確認。
管理者アカウントを作成
管理者アカウントの名前はadminかなと思い作っちゃったけど、別の全然関係ない名前の方がいいとの話も見た
https://blog.chikage.net/misskey-advent-calender-2023/#toc20
Misskeyの設定をする(ひとまずこれだけは)
コントロールパネル→モデレーション「アカウントの登録をオープンにする」をオフ。他の人を呼ぶ予定でも一通り設定が終わるまではオフがよさそう。
VPSに戻る
もういらないので、とりあえず3000は閉じておく。
さっきのフィルタールールを消すだけ。
✅ここからの参考
ど素人がMisskeyのお一人様サーバーを建てました(Misskey v13):Cloudflareの設定をする
Cloudflareを使えるようにする準備
Misskeyサーバーを公開するときは、CloudflareなどのCDNを使用することを強くおすすめします。
らしい(CDNの設定 | Misskey Hub)
↑/api/*がナントカというのは自鯖建立 3:Misskey追加の設定でやります
CDNの利点は、サイト高速化、サーバーの負荷軽減、DDoS攻撃時のクッションになるなどらしい。無料で使えるので使う。
Cloudflareのアカウントを作成。
Cloudflareに、使うドメインを登録する。
「既存のドメインを入力」みたいなところに取得済のドメインを入力。
サブドメインを使いたい場合でもルートドメインを入力。
フリープランで進める。
指示に従い、ムームードメインからCloudflareにネームサーバを変更。
https://gyazo.com/c42f46c5ae804a6921e2da79937bac0e
今回のように普通にCloudflareを使うなら、ネームサーバをCloudflareにする必要がある?らしい あんまわかりませんが案内の通りにする
今回はムームードメインで取得したドメインなので、ネームサーバがムームーDNSになっている。ムームードメインにログインして変える。
これに1日くらい時間がかかるかもらしいが、「(ドメイン)は Cloudflare Free プランで有効になりました。」というメールが来たら完了。わりとすぐ来た。
Cloudflareで、ドメインの設定をいじる
ページ遷移してしまって、参考サイトがやっているクイックスタートガイドがどこにあるかわからなくなってしまったので(別にクイックスタートガイドの項目を全部やらなくてもいいかもしれないが、何が項目として載ってるのか見たかった)、必要とされてることを手動でやった。
Speed > 最適化
推奨事項全部オンにしてみた
常時SSL化する
httpからhttpsにするやつ。しないとMisskey使えないらしい。
最適化推奨事項のうち常に HTTPS を使用はフレキシブルになっていたので、フル(もしくはフル(厳密))に変更。
https://gyazo.com/d4a8282b9889e8e472e348bba931da81
この青い設定ボタンに気付くのに、なぜか微妙に時間かかった
最小TLSバージョンの設定
SSL/TLS→エッジ証明書から、1.2にしておく
1.1以下などは脆弱性があるらしい
https://gyazo.com/4e33769f4850ae8a2ca3f9eb26fc302b
参考:
2020年度版Mastodon鯖管セキュリティチェックリスト - HackMD:HTTPS(HTTP over TLS)設定
これから初めてのMisskeyサーバーを建てたい人がすべきセキュリティ対策など|Esurio1673:その他5 SSL/TLS周り
Auto minifyは使用しないで!
とのことだが、2024-08-05に廃止されてもうないので気にしなくてよいっぽい(Speed > 最適化にあった項目っぽい)。
CloudflareがAuto Minifyを廃止へ 代替手段は? - ろぼいんブログ
Deprecating Auto Minify - Website, Application, Performance - Cloudflare Community
CloudflareでDNSレコードを設定する
使いたいドメインが、借りたVPSのIPアドレスと紐付くことをここで指定する。
ネームサーバをCloudflareに変更しただけでは、まだ「このドメインのDNSレコードはCloudflareが管理してますよ」ってだけの状態。
やらないと、ドメインのURLにアクセスしてもサーバが見つけられず開かない。(サーバ側の設定もする必要ある。というのはこの後のSSL/TLS設定の項目)
CloudflareのDNS使う場合はCloudflareでDNSレコード設定することになると思うけど、そうではなくXserverでDNS設定する場合の参考:https://tomato-code.com/6713/#index_id12
ルートを他の用途に使いたいので、今回自分はサブドメインをMisskeyに使います
DNS > レコード
DNS管理 > レコードの追加でAレコードを追加。
タイプ:A
名前:(サブドメイン名/ルートで使うなら@)
IPv4アドレス:(さっき控えたIPアドレス)
プロキシをオンにしておく。というのがCDN使うという設定。
IPv6対応のサーバーであれば、AAAAも設定するらしい。XserverVPSはIPv4だけらしい
SSH接続できるようにする
✅参考:SSH接続方法 | XServer VPS(マニュアル)
先ほどコンソールボタンからサーバーにログインした。これでも操作できるけど、画面上でコピペができない(後で不便)とのことなので、SSH接続というやり方でVPSを操作できるようにする。
今回は、マニュアルで紹介されているうちのTera Termをクライアントソフトとして使った。
クライアントから、一旦パスワードでログインする。
マニュアルの「SSH Keyを設定していない場合」を参照。
待ち受けポートの確認
パケットフィルター設定で、SSHを許可してあるので22は開いてる。
ログインできたら次の作業への準備完了。
Tera Termでの始め方 こちらも参考:https://tomato-code.com/6713/#index_id14
✅ここからの参考:Misskeyアプリイメージを利用する | XServer VPS(マニュアル)のSSL/TLS手順の項
VPSのSSL/TLS設定をする
オリジンサーバー(今回はVPS)の証明書ってやつの設定。CloudflareのCDN使う場合、Cloudflareと閲覧者の間の暗号化はCloudflareのさっきやったSSL設定で(証明書設定)できてるが、オリジンサーバーとCloudflareの間の暗号化はオリジンの証明書設定が必要。
用意されてるコマンドを実行すると、Let's Encryptの証明書を簡単にインストールしてくれる。
マニュアルではSSH接続推奨だけど、コンソールでもできるはず
どっちでもいいと思いますがSSH接続どうせ後でやるのでそれでやってみます。
というかコンソール、日本語が文字化け(ダイヤ)してて読めなかったし
https://gyazo.com/083006b44652110d66fbd3e7f05aeb5e
マニュアルの通りにする。
ドメインは、サブドメインを使うならサブドメインを入力。
多分 ssl_setup のコマンドでやってるのはSSL/TLS設定のために必要な処理を自動化するスクリプトかなんかなので、いろいろ行われているはず。
ドメインを入力したところで、どのドメインに対してサーバーが「Misskeyですよ~」つって出してくるのかという紐づけ設定(Webサーバーの?)をがサーバー側でも完了した ってことですか?
ブラウザで、目的のドメインにアクセスする
httpsから始まるURLで接続できるか確認。
Misskeyをアップデートする
SSL/TLS設定のついでに、マニュアルの通りにする。
##### Misskey update finished. ##### と表示されたら完了!
1分ほどかかる?待つ。
SSH接続を終わる
一旦終了してみます。
PC使い終わったらログアウトするのと同じように、exitコマンドでログアウトして終了(Tera Termウィンドウが閉じる)。
オブジェクトストレージの設定
よっぽど使ったほうがいいのかな…という感じなのでやっておく。
✅参考:VPS で個人用 Misskey サーバを構築する - アドグローブブログ:Cloudflare R2 でオブジェクトストレージの設定
CloudflareのR2というオブジェクトストレージには無料で使える枠があるので、それで済ませたい。超過すると課金されるらしい。
参考サイトの通りにおこなう。
Base URLにペーストするURLは、末尾の/を取らないと、画像がボケたままだった。
うまくいかない場合
コピペ間違えてるかもしれない。
参考サイトに載っている参考サイトリストも役立つかも
設定したら、画像UPしてみる。ドライブなどから開いてみて、画像がボケてなければOK。
バックアップのオブジェクトストレージ設定(参考サイトの次の項目)もやってしまえればやるといいけど(そんな人はこれ読んでないと思う)、セキュリティ系先におこなって慣れてからやればよさそうなので、最後に回しました(自鯖建立5にて)
あと別に必ずしもバックアップにもR2を使う必要はないのかなと思いますがせっかく使ってるので、後でR2でやりました
⭐これでとりあえず使えるようになっているようです。
⭐まだまだ設定やっていく。
次:自鯖建立 1.5:コマンドとか操作とかひとまずのメモ(Ubuntu)
次の次:自鯖建立 2:SSH接続でのログイン方法を多少安全にする(公開鍵認証)